package com.tangcco.dao;

import com.tangcco.pojo.Comment;
import com.tangcco.pojo.Page;
import com.tangcco.pojo.Reply;
import com.tangcco.pojo.VoteLog;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface CommentMapper {
	//查询评论数量
	int selectCommentCount(@Param("musicRid") String musicRid);

	//查询热门评论
	List<Comment> selectHotComment(@Param("musicRid") String musicRid);

	//根据歌曲ID查询最新评论
	List<Comment> selectByMusicRid(@Param("musicRid") String musicRid, @Param("page")Page page);

	//查询回复评论的原评论
	Reply selectOldComment(@Param("cId") Integer cId);

	//添加评论
	int insertComment(Comment comment);

	//添加评论父子关系
	int insertRelation(@Param("parentId") Integer parentId,@Param("childId") Integer childId,@Param("musicRid") String musicRid);

	//删除评论
	int deleteComment(@Param("cId") Integer cId);

	//点赞或取消赞
	int updateLikeNum(@Param("cId") Integer id,@Param("uId") Integer uId,@Param("isZan") Integer isZan);

	//修改点赞关系表中的状态
	int updateVotelog(@Param("cId") Integer cId,@Param("uId") Integer uId,@Param("isZan") Integer isZan);

	//添加点赞关系
	int insertVotelog(VoteLog voteLog);

	//查询单个点赞关系
	VoteLog selectVoteLogById(@Param("cId") Integer cId,@Param("uId") Integer uId);

	//查询所有点赞关系
	List<VoteLog> selectVoteLog();
}
